package org.study.mybatisplus.dynamic.boot.dto;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.*;

import java.io.Serializable;

/**
 * 添加设备属性
 *
 * @author doveylovey
 * @version v1.0.0
 * @email 1135782208@qq.com
 * @date 2024年10月08日
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DevicePropertySaveDTO implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 属性ID，新增不传，修改传
     */
    private Long propertyId;

    /**
     * 项目ID(不能编辑)
     */
    @NotNull(message = "请选择一个项目")
    private Long projectId;

    /**
     * 设备ID(不能编辑)
     */
    @NotNull(message = "请选择一个设备")
    private Long deviceId;

    /**
     * 属性编号(不能编辑)
     */
    @NotBlank(message = "请填写属性编号")
    private String propertyNo;

    /**
     * 属性名称(可编辑)
     */
    @NotBlank(message = "请填写属性名称")
    private String propertyName;

    /**
     * 属性类型(不能编辑)，存储属性英文名;字典property_type
     */
    private String propertyType;

    /**
     * 属性精度(可编辑);小数点
     */
    private Integer propertyScale;

    /**
     * 属性单位(可编辑)，存储单位名称;字典property_unit
     */
    private String propertyUnit;
}
